package com.xhwy.mapper;

import com.xhwy.entity.ProductType;
import com.xhwy.util.PageUtil;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Collection;
import java.util.List;
import java.util.Set;

@Mapper
@Repository
public interface ProductTypeMapper {

    /**
     * 查询商品类型
     * @param productType 筛选条件，可选
     * @param pageUtil 分页参数，可选
     * @return
     */
    List<ProductType> queryAll(ProductType productType, @Param("pageUtil") PageUtil<ProductType> pageUtil);

    /**
     * 统计总行数
     * @param productType
     * @return
     */
    int count(ProductType productType);

    /**
     * 添加商品类型
     * @param productType
     * @return
     */
    int addProductType(ProductType productType);

    /**
     * 修改商品类型
     * @param productType
     * @return
     */
    int updateProductType(ProductType productType);

    /**
     * 删除商品类型
     * @param productTypeId
     * @return
     */
    int deleteProductTypeByProductTypeId(Integer productTypeId);

    /**
     * 根据商品类型id集合获取商品类型信息
     * @param productTypeIdCollection
     * @return
     */
    List<ProductType> getByProductTypeIdCollection(Collection<Integer> productTypeIdCollection);
}
